MACA_PATH ?= /opt/maca
MXCC := $(MACA_PATH)/mxgpu_llvm/bin/mxcc
BUILD_DIR := $(CURDIR)/build
SRC := $(CURDIR)/src/fused_moe_i8_tn_example.cpp
BIN := $(BUILD_DIR)/fused_moe_i8_tn_example

.PHONY: all build run clean

all: build

build: $(BIN)

$(BIN): $(SRC)
	mkdir -p $(BUILD_DIR)
	$(MXCC) -std=c++17 -xmaca \
		-I$(CURDIR)/src \
		-I$(MACA_PATH)/include \
		$(SRC) \
		-L$(MACA_PATH)/lib \
		-lmcruntime \
		-o $(BIN)

run: $(BIN)
	$(BIN)

clean:
	rm -rf $(BUILD_DIR)
